package org.dromara.house.domain.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.house.domain.dto.HouseFloorDto;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * <p>
 * 房源表
 * </p>
 *
 * @author LCH
 * @since 2025-08-26
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class ParkHousing implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键id
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 楼宇名称
     */
    private String housingName;

    /**
     * 楼宇代码
     */
    private String housingCode;

    /**
     * 所属片区id  ，park_district表id
     */
    private Long districtId;

    @TableField(exist = false)
    private String districtName;

    /**
     * 房源图片地址
     */
    private String houseImg;

    /**
     * 总面积
     */
    private Double totalArea;

    /**
     * 总楼层
     */
    private Integer totalFloor;

    /**
     * 已出租面积
     */
    private Double leasedArea;

    /**
     * 未出租面积
     */
    private Double unreleasedArea;

    /**
     * 入驻企业数量
     */
    private Integer enterpriseNum;


    private String remark;

    /**
     * 创建人id
     */
    private Long createBy;

    /**
     * 创建时间
     */
    private Date createTime;

    /**
     * 删除状态 0 正常 1 删除
     */
    private Integer deleteStatus;

    /**
     * 修改人id
     */
    private Long updateBy;

    /**
     * 修改时间
     */
    private Date updateTime;


    /**
     * 楼宇地址
     */
    private String address;

    @TableField(exist = false)
    private List<ParkFile> files;

    /**
     * 楼层
     */
    private Integer floor;

    @TableField(exist = false)
    private List<ParkFloor> houseFloorDtoList;
}
